package com.baoyouqun.domain.VO;

import com.baoyouqun.domain.Enum.HandleStatusEnum;
import com.baoyouqun.domain.Enum.ReportTypeEnum;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 举报记录+关联帖子+举报人信息VO（对齐用户DemandVO风格）
 */
@Data
public class ReportWithDemandVO {
    // ---------------------- 举报记录基础字段 ----------------------
    private String id;                  // 举报记录ID
    private String userId;              // 举报人ID（关联user表）
    private ReportTypeEnum reportType;  // 举报类型枚举
    private String reportContent;       // 举报内容描述
    private List<String> files;         // 违规截图列表
    private HandleStatusEnum handleStatus; // 处理状态枚举
    private String handlerUserId;       // 处理人ID
    private String handleResult;        // 处理结果
    private LocalDateTime handleTime;   // 处理时间
    private LocalDateTime createTime;   // 举报时间
    private LocalDateTime updateTime;   // 更新时间

    // ---------------------- 关联举报人信息（对齐UserSimpleVO） ----------------------
    private String reporterName;        // 举报人姓名
    private String reporterHeadImg;     // 举报人头像（可选）

    // ---------------------- 关联被举报帖子（Demand）信息 ----------------------
    private String demandId;            // 帖子ID
    private String demandTitle;         // 帖子标题
    private String demandDescription;         // 帖子内容
    private Integer demandViewCount;    // 帖子浏览量
    private Integer demandCollectCount; // 帖子收藏量
    private Integer demandDislikeCount; // 帖子踩数
    private String demandPublisherName; // 帖子发布人姓名
    private String demandCategory;      // 帖子分类（一级/二级）
    private String demandUrgencyDesc;   // 帖子紧急程度
    private String demandValidityDesc;  // 帖子有效期
    private String demandPhonePrivacyDesc; // 帖子隐私保护类型
    private Byte demandStatus;          // 帖子当前状态
    private LocalDateTime demandCreateTime; // 帖子发布时间

}